Certificate pinning is used to ensure that mobile or desktop applications only communicate with trusted servers. A user computing device operating an application checks an associated server's digital certificate against a pre-defined certificate. In conventional systems, the digital certificate is written into the code of the application and provided to the user computing device when the application is downloaded or otherwise installed. The digital certificate provides an assurance to the user that the application is the authentic application provided by the issuer of the application.
Occasionally, a digital certificate is compromised. In an example, the certificate is exposed to the public or otherwise has its privacy compromised. In a conventional system, when a server certificate is compromised, changing the digital certificate stored on the user computing device requires creation of an updated certificate. Using the updated certificate, an updated version of the application must be created, tested, and distributed to the user computing device, and installed by the user computing device, to allow continued operation of the application.